package com.lcx.movie.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lcx.movie.entity.MovieFavorites;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Service;
import java.util.List;

@Service
public interface MovieFavoritesService  extends IService<MovieFavorites> {
    /**
     * 前台新增我的收藏电影
     * @param movieFavorites 电影收藏实体
     * @return 受影响的行数
     */
    public int insertMovieFavorites(MovieFavorites movieFavorites);

    /**
     * 前台根据用户id查询我的收藏电影
     * @param userId 用户id
     * @return 收藏的电影集合
     */
    public List<MovieFavorites> selectMovieFavoritesList(Integer userId);
    /**
     * 前台根据收藏的电影id取消收藏电影
     * @param movieId 电影id
     * @return 受影响的行数
     */
    public int deleteFavorite(Integer movieId);

    /**
     * 前台  收藏前判断该用户此影片是否已经收藏过
     * @param userId 用户id
     * @param movieId 电影id
     * @return 受影响的行数
     */
    public int checkMovieFavorite(Integer userId,Integer movieId);
    /**
     * 主页面的最受期待
     * @return 最受期待的电影集合
     */
    public List<MovieFavorites> mostExpectedMovies();
    /**
     * 根据用户名或者影片名查询收藏的电影
     * @param userName 用户名
     * @param movieCnName 电影名
     * @return 收藏电影集合
     */
    public List<MovieFavorites> selectMovieFavorites(@Param("userName")String userName,@Param("movieCnName")String movieCnName);
}
